package net.hn.hnms.biz.mine.domain;

import javax.persistence.*;
import java.sql.Date;
import java.util.Objects;

/**
 * Author: PanSX
 * Date: 2022/8/5 14:37
 */
@Entity
@Table(name = "dim_company_colliery_common", schema = "public", catalog = "huaneng-smart-mine")
public class DimCompanyCollieryCommon {
    private String id;
    private String economicType;
    private String businessRegisterNumber;
    private Date foundationDate;
    private String registeredAddress;
    private String zipCode;
    private String legalRepresentative;
    private String officePhone1;
    private String mobilePhone1;
    private String principal;
    private String officePhone2;
    private String mobilePhone2;
    private Integer employeeCount;
    private String companyPhoto;
    private String companyIntroduction;
    private String createUserId;
    private Date createTime;
    private String updateUserId;
    private Date updateTime;

    @Id
    @Column(name = "id")
    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    @Basic
    @Column(name = "economic_type")
    public String getEconomicType() {
        return economicType;
    }

    public void setEconomicType(String economicType) {
        this.economicType = economicType;
    }

    @Basic
    @Column(name = "business_register_number")
    public String getBusinessRegisterNumber() {
        return businessRegisterNumber;
    }

    public void setBusinessRegisterNumber(String businessRegisterNumber) {
        this.businessRegisterNumber = businessRegisterNumber;
    }

    @Basic
    @Column(name = "foundation_date")
    public Date getFoundationDate() {
        return foundationDate;
    }

    public void setFoundationDate(Date foundationDate) {
        this.foundationDate = foundationDate;
    }

    @Basic
    @Column(name = "registered_address")
    public String getRegisteredAddress() {
        return registeredAddress;
    }

    public void setRegisteredAddress(String registeredAddress) {
        this.registeredAddress = registeredAddress;
    }

    @Basic
    @Column(name = "zip_code")
    public String getZipCode() {
        return zipCode;
    }

    public void setZipCode(String zipCode) {
        this.zipCode = zipCode;
    }

    @Basic
    @Column(name = "legal_representative")
    public String getLegalRepresentative() {
        return legalRepresentative;
    }

    public void setLegalRepresentative(String legalRepresentative) {
        this.legalRepresentative = legalRepresentative;
    }

    @Basic
    @Column(name = "office_phone_1")
    public String getOfficePhone1() {
        return officePhone1;
    }

    public void setOfficePhone1(String officePhone1) {
        this.officePhone1 = officePhone1;
    }

    @Basic
    @Column(name = "mobile_phone_1")
    public String getMobilePhone1() {
        return mobilePhone1;
    }

    public void setMobilePhone1(String mobilePhone1) {
        this.mobilePhone1 = mobilePhone1;
    }

    @Basic
    @Column(name = "principal")
    public String getPrincipal() {
        return principal;
    }

    public void setPrincipal(String principal) {
        this.principal = principal;
    }

    @Basic
    @Column(name = "office_phone_2")
    public String getOfficePhone2() {
        return officePhone2;
    }

    public void setOfficePhone2(String officePhone2) {
        this.officePhone2 = officePhone2;
    }

    @Basic
    @Column(name = "mobile_phone_2")
    public String getMobilePhone2() {
        return mobilePhone2;
    }

    public void setMobilePhone2(String mobilePhone2) {
        this.mobilePhone2 = mobilePhone2;
    }

    @Basic
    @Column(name = "employee_count")
    public Integer getEmployeeCount() {
        return employeeCount;
    }

    public void setEmployeeCount(Integer employeeCount) {
        this.employeeCount = employeeCount;
    }

    @Basic
    @Column(name = "company_photo")
    public String getCompanyPhoto() {
        return companyPhoto;
    }

    public void setCompanyPhoto(String companyPhoto) {
        this.companyPhoto = companyPhoto;
    }

    @Basic
    @Column(name = "company_introduction")
    public String getCompanyIntroduction() {
        return companyIntroduction;
    }

    public void setCompanyIntroduction(String companyIntroduction) {
        this.companyIntroduction = companyIntroduction;
    }

    @Basic
    @Column(name = "create_user_id")
    public String getCreateUserId() {
        return createUserId;
    }

    public void setCreateUserId(String createUserId) {
        this.createUserId = createUserId;
    }

    @Basic
    @Column(name = "create_time")
    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    @Basic
    @Column(name = "update_user_id")
    public String getUpdateUserId() {
        return updateUserId;
    }

    public void setUpdateUserId(String updateUserId) {
        this.updateUserId = updateUserId;
    }

    @Basic
    @Column(name = "update_time")
    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        DimCompanyCollieryCommon that = (DimCompanyCollieryCommon) o;
        return Objects.equals(id, that.id) &&
                Objects.equals(economicType, that.economicType) &&
                Objects.equals(businessRegisterNumber, that.businessRegisterNumber) &&
                Objects.equals(foundationDate, that.foundationDate) &&
                Objects.equals(registeredAddress, that.registeredAddress) &&
                Objects.equals(zipCode, that.zipCode) &&
                Objects.equals(legalRepresentative, that.legalRepresentative) &&
                Objects.equals(officePhone1, that.officePhone1) &&
                Objects.equals(mobilePhone1, that.mobilePhone1) &&
                Objects.equals(principal, that.principal) &&
                Objects.equals(officePhone2, that.officePhone2) &&
                Objects.equals(mobilePhone2, that.mobilePhone2) &&
                Objects.equals(employeeCount, that.employeeCount) &&
                Objects.equals(companyPhoto, that.companyPhoto) &&
                Objects.equals(companyIntroduction, that.companyIntroduction) &&
                Objects.equals(createUserId, that.createUserId) &&
                Objects.equals(createTime, that.createTime) &&
                Objects.equals(updateUserId, that.updateUserId) &&
                Objects.equals(updateTime, that.updateTime);
    }

    @Override
    public int hashCode() {
        return Objects.hash(id, economicType, businessRegisterNumber, foundationDate, registeredAddress, zipCode, legalRepresentative, officePhone1, mobilePhone1, principal, officePhone2, mobilePhone2, employeeCount, companyPhoto, companyIntroduction, createUserId, createTime, updateUserId, updateTime);
    }
}
